package com.zzyl.mapper;


import com.github.pagehelper.Page;
import com.zzyl.entity.NursingProject;
import com.zzyl.vo.NursingProjectVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;

import java.util.List;

@Mapper
public interface NursingProjectMapper {
    //1.1 分页条件查询护理项目
    Page<NursingProjectVo> selectByPage(String name, Integer status);

    //1.2 新增护理项目
    int insert(NursingProject nursingProject);

    // 1.2.1 校验新增项目名称是否重名
    int countByName(String name);

    // 1.3.2 项目存在 根据id查询项目
    NursingProject findById(Long id);

    // 1.3.1 根据id校验项目是否存在
    int queryNPById(Long id);

    // 1.4 修改项目
    void update(NursingProject nursingProject);

    // 1.5 删除护理项目信息
    int deleteById(Long id);

    // 1.6 启动或禁用
    @Update("update nursing_project set status = #{status} where id = #{id}")
    void isEnable(Long id, Integer status);

    // 1.7 查询所有护理项目
    @Select("select * from nursing_project")
    List<NursingProjectVo> selectAll();
}
